Ключевые концепции теории коинтеграции впервые были сформулированы Granger(1983) и Engle (1987). В 2003 году работа Granger, Engle и были оценена Нобелевской премией по экономике.
Пусть \(x_{t}\)- однородно нестационарный временной ряд. Будем говорить, что \(x_{t}\) принадлежит классу \(I(1)\), если его разности \[\Delta x_{t}=x_{t}-x_{t-1}\] является стационарным (принадлежит классу \(I(0)\)).
. Пусть \(x_{t}\)- однородно нестационарный временной ряд. Будем говорить, что \(x_{t}\) принадлежит классу \(I(d)\), если его разности \[\Delta x_{t}=x_{t}-x_{t-1}\] является рядом из класса \(I(d-1)\). Пусть \(y_{t}- n\)-мерный временной ряд \[y_{t}=(y_{1,t},...,y_{n,t})′\] такой, что каждая из его компонент \(y_{k,t}k=1,...,n\) взятая в отдельности представляет собой ряд из класса \(I(1)\).
Компоненты этого ряда называют коинтегрированными, если существует их нетривиальная линейная комбинация \(a′y_{t}\), которая является стационарной (принадлежит классу \(I(0)\)).
Пусть \(\epsilon_{t,1}\) и \(\epsilon_{t,2}\) два независимых в совокупности процесса белого шума. Процесс \(y_{t,2}\) такой, что \[y_{t,2}=y_{t-1,2}+\epsilon_{t,2}\]
а процесс \(y_{t,1}\) \[y_{t,1}=\gamma y_{t,2}+\epsilon_{t,1}\]
Проверим, что это процессы из \(I(1)\). Действительно \[\Delta y_{t,2}=y_{t,2}-y_{t-1,2}=y_{t-1,2}-y_{t-1,2}+\epsilon_{t,2}=\epsilon_{t,2}\]
а следовательно \(\Delta y_{t,2}∈I(1)\)
\[\Delta y_{t,1} = \gamma y_{t,2}+\epsilon_{t,1}-\gamma y_{t-1,2}-\epsilon_{t-1,1}=\] \[\gamma (y_{t,2}-y_{t-1,2})+\epsilon_{t,1}-\epsilon_{t-1,1} = \gamma \epsilon_{t,2}+\epsilon_{t,1}-\epsilon_{t-1,1}\]
что также является стационарным процессом. Рассмотрим вектор a вида \(а=(1,-\gamma )\) \[y_{t,1}-\gamma y_{t,2} = \gamma y_{t,2}+\epsilon_{t,1}-\gamma (y_{t-1,2}+\epsilon_{t,2})\] \[= \gamma (y_{t,2}-y_{t-1,2})+\epsilon_{t,1}-\gamma \epsilon_{t,2}\] \[= \gamma \epsilon_{t,2}+\epsilon_{t,1}-\gamma \epsilon_{t,2}=\epsilon_{t,1}\] Что естественно является стационарным процессом. Таким образом процессы \(y_{t,1}\) и \(y_{t,1}\) коинтегрированы. Естественно в определении 3 коинтегрированный вектор не является единственным. Если \(а\) - вектор коитегрирования,то \(ba\), где \(b\) некоторая константа также является коинтегрирущим вектором. Однако, если многомерный вектор \(y_{t}\) содержит более, чем две компоненты, то могут сосуществать несколько линейно независимых векторов \(a_1..,a_{h}\) такие, что линейные комбинации этих векторов с \(y_{t}\) будут давать стационарные процессы
Пусть \(y_{t}\) есть \(n\)-мерный процесс такой, что каждая из его компонет есть процесс из \(I(1)\). Предположим, что существует матрица A размера \((n×h)\) такая, что: - столбцы ее линейно независимы; - \(A′y_{t}\) представляют собой \(h<n\) процессов из \(I(0)\); тогда будем говорить, что процессы из \(y_{t}\) коинтегрированы порядка \(h\).
Вернемся к рассмотрению примера.Положим \(e_{t,2}=\epsilon_{t,2}\), а \(e_{t,1}=\gamma \epsilon_{t,2}+\epsilon_{t,1}\).Тогда правую часть уравнения для \(\Delta y_{t,1}\) можно переписать следующим образом : \[\Delta y_{t,1} = \gamma \epsilon_{t,2}+\epsilon_{t,1}-\epsilon_{t-1,1}=e_{t,1}-(e_{t-1,1}-\gamma e_{t-1,2})= (1-B)e_{t,1}+\gamma Be_{t,2}\]
Тогда в новых обозначениях выражения для \(\Delta y_{t,1}\) и \(\Delta y_{t,2}\) можно записать в операторной форме \[\begin{equation*}\left[ \begin{matrix}\Delta y_{t,1}\\\Delta y_{t,2}\end{matrix}\right]= \Psi(B)\left[ \begin{matrix}e_{t,1}\\ e_{t,2}\end{matrix}\right]\end{equation*}\] где \[\begin{equation*}\Psi(B)=\left[ \begin{matrix}1-B&\gamma B\\ 0&1\end{matrix}\right]\end{equation*}\] Отсюда модель векторной авторегрессии для \(\Delta y_{t,1}\) и \(\Delta y_{t,2}\) ,если бы оно существовало, имело бы следующий вид \[\Phi(B)\Delta y_{t}=e_{t}\]
где \(\Phi(B)=Ψ^{-1}(B)\). Но матрица \(Ψ(B)\) имеет единичный корень. Действительно, ее определитель при \(B=1\) равен нулю \[\begin{equation*}\Psi(1)=\left[ \begin{matrix}0&\gamma 1\\ 0&1\end{matrix}\right]\end{equation*}\] Следовательно оператор скользящего среднего не обратим. Отсюда не существует оператора конечного порядка типа авторегрессии для \(\Delta y_{t}\). Но если мы слегка изменим определение векторной авторегресси и позволим вхождение туда не только приращений, но и значений самих \(y_{t-k}\), но только с некоторой задержкой \(k>0\), то стационарное представление для \(\Delta y_{t}\) найти довольно легко. Действительно, возвратившись к начальному представлению \(\Delta y_{t}\) через шум вида \(\epsilon_{t,1}\) и \(\epsilon_{t,2}\),получим \[\begin{equation*}\left[ \begin{matrix}\Delta y_{t,1}\\\Delta y_{t,2}\end{matrix}\right]= \left[ \begin{matrix}-1&\gamma 1\\ 0&0\end{matrix}\right]\left[ \begin{matrix}y_{t-1,1}\\ y_{t-1,2}\end{matrix}\right]+\left[ \begin{matrix}\gamma \epsilon_{t,2}+\epsilon_{t,1}\\ \epsilon_{t,2}\end{matrix}\right]\end{equation*}\] Этот пример нам показал, для коинтегрированных систем авторегрессионное представление для \(\Delta y_{t}\) в многомерном случае должно включать в себя члены вида \(Gy_{t-1}\)
Хотя векторная авторегрессионная модель для приращений \(\Delta y_{t}\) не может быть формой представлением коинтегрированный систем, то для самих \(y_{t}\) это вполне возможна, только естественно (так как компоненты \(y_{t}\) из \(I(1)\)) это будет нестационарная модель например порядка \(p\). \[y_{t}=\alpha+\Phi_1y_{t-1}+...+\Phi_{p}y_{t-p}+\epsilon_{t}\] или в операторной форме
\[\Phi(B)y_{t}=\alpha+\epsilon_{t}\]
где \(\Phi(B)\)- оператор нестационарной векторной авторегрессии вида \[\Phi(B)=1-\Phi_1B-...-\Phi_{p}B^{p}\]
нестационарность означает, что определитель следующей матрицы равен нулю при \(B=1\) \[|1-\Phi_1-...-\Phi_{p}|=0\]
Выражение для \(y_{t}\) можно в данном случае эквивалентно переписать другим образом, которое и является наиболее общей формой представления коинтегрированных систем \[y_{t}=\zeta_1\Delta y_{t-1}+...+\zeta_{p-1}\Delta y_{t-p+1}+\alpha+\rhoy_{t-1}+\epsilon_{t}\]
где \[\rho=[\Phi_1+...+\Phi_{p}]\] \[\zeta_{s}=-[\Phi_{s+1}+...+\Phi_{p}]\] при \[s=1,...,p-1\] Вычитая \(y_{t-1}\) из обеих частей получим \[\Delta y_{t} = \zeta_1\Delta y_{t-1}+...+\zeta_{p-1}\Delta y_{t-p+1}+\alpha+\zeta_0y_{t-1}+ε_{t}\] (1) где \[\zeta_0 = \rho-I_{n}=-(I_{n}-Φ_1-...-Φ_{p})=-Φ(1)\]
Теперь предположим, что мы работаем с коинтегрированной системой порядка \(h<n\). Т.е. существует матрица \(A\) размера \((n×h)\) такая , что: - столбцы ее линейно независимы; - \(A′y_{t}\) представляют собой \(h<n\) процессов из \(I(0)\); Тогда последнее представление для \(\Delta y_{t}\) можно переписать так \[\Delta y_{t}=\zeta_1\Delta y_{t-1}+...+\zeta_{p-1}\Delta y_{t-p+1}+\alpha-GA′y_{t-1}+ε_{t}\] или вот так \[\Delta y_{t}=\zeta_1\Delta y_{t-1}+...+\zeta_{p-1}\Delta y_{t-p+1}+\alpha-Gz_{t-1}+ε_{t}\]
где \(z_{t-1}=A'y_{t-1}\) вектор из \(h\) стационарных процессов, а матрица \(G\) такая, что
\(GA′=-\zeta_0\). Эти последние два выражения и называют представлением коррекции ошибки.
Нам необходимо задать модель вида \[\Phi(B)y_{t}=\alpha+\epsilon_{t}\] где \(\Phi(B)\)- оператор нестационарной векторной авторегрессии вида \[\Phi(B)=1-\Phi_1B-...-\Phi_{p}B^{p}\]
library(urca)
## Warning: package 'urca' was built under R version 3.2.4
library(egcm)
## Warning: package 'egcm' was built under R version 3.2.5
## Loading required package: zoo
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
## Loading required package: xts
## Loading required package: TTR
## Warning: package 'TTR' was built under R version 3.2.5
library(mAr)
## Loading required package: MASS
#Set unstable Vector AR(2) model X = A(1)*X(t-1)+A(2)*X(t-2)+E
#Set A(1) matrix(4,4)
Phi1 <- c(0.25,0.2, 0.1, 0)
Phi1 <- rbind(Phi1,c(0, 0.2, 0.3, 0))
Phi1 <- rbind(Phi1,c(0, 0, 0.5, 0))
Phi1 <- rbind(Phi1,c(0, 0, 0, 0.5))
#Set A(2) matrix(4,4)
Phi2 <- c(0.25, 0.1, 0.1, 0)
Phi2 <- rbind(Phi2,c(0, 0.4, 0.1, 0))
Phi2 <- rbind(Phi2,c(0, 0, 0.5, 0))
Phi2 <- rbind(Phi2,c(0, 0, 0,0.5))
Phi1+Phi2
## [,1] [,2] [,3] [,4]
## Phi1 0.5 0.3 0.2 0
## 0.0 0.6 0.4 0
## 0.0 0.0 1.0 0
## 0.0 0.0 0.0 1
Phi <- cbind(Phi1,Phi2)
Phi
## [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
## Phi1 0.25 0.2 0.1 0.0 0.25 0.1 0.1 0.0
## 0.00 0.2 0.3 0.0 0.00 0.4 0.1 0.0
## 0.00 0.0 0.5 0.0 0.00 0.0 0.5 0.0
## 0.00 0.0 0.0 0.5 0.00 0.0 0.0 0.5
вектор \(\alpha\) и ковариационная матрица \(\Omega=cov(\epsilon_t,\epsilon_t')\)
w<-c(0,0,0,0)
C <- rbind(c(4,0,0,0),c(0,1,0,0),c(0,0,1,0),c(0,0,0,4))
Проверим нестационарность заданной модели Для этого мы сформируем из матриц \(\Phi_1,\Phi_2\) матрицу \(F\) ,как в прошлой лекции и вычислим ее собственные значения.
I <- diag(1,4,4)
Zero <- diag(0,4,4)
IZ <- cbind(I,Zero)
F <- rbind(Phi,IZ)
F
## [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
## Phi1 0.25 0.2 0.1 0.0 0.25 0.1 0.1 0.0
## 0.00 0.2 0.3 0.0 0.00 0.4 0.1 0.0
## 0.00 0.0 0.5 0.0 0.00 0.0 0.5 0.0
## 0.00 0.0 0.0 0.5 0.00 0.0 0.0 0.5
## 1.00 0.0 0.0 0.0 0.00 0.0 0.0 0.0
## 0.00 1.0 0.0 0.0 0.00 0.0 0.0 0.0
## 0.00 0.0 1.0 0.0 0.00 0.0 0.0 0.0
## 0.00 0.0 0.0 1.0 0.00 0.0 0.0 0.0
eval <- eigen(F,only.values= TRUE)
modev <- Mod(eval$values)
barplot(modev,col = "blue",main = " Abs value of eigen values")
abline(h=1,col = "black")
Два собственных значения по модулю равны 1, следовательно ряд нестационарен.
Другой и более простой способ проверки. Убедимся, что определитель матрицы \[|1-\Phi_1-...-\Phi_{p}|=0\] равен нулю. Это будет означать что \(B=1\) является корнем уравнения
\[1-\Phi_1B...-\Phi_{p}B^p=0\]
D<- I-Phi1-Phi2
D
## [,1] [,2] [,3] [,4]
## Phi1 0.5 -0.3 -0.2 0
## 0.0 0.4 -0.4 0
## 0.0 0.0 0.0 0
## 0.0 0.0 0.0 0
det(D)
## [1] 0
Итак условия нестационарности выполнены приступаем к моделированию
data<- mAr.sim(w,Phi,C,N=300)
## Warning in mAr.sim(w, Phi, C, N = 300): unstable AR model
data<- as.matrix(data)
matplot(data,main="Simulated Time Series",col = c("blue","red","green","magenta"),type = "l",lty=1,lwd = 2)
Сначала идет 2-х шаговый МНК
1.1 Оценки параметров множественной регрессионной модели связи \(\Delta y_{t}\) с \(\Delta y_{t-1},\Delta y_{t-2},...\Delta y_{t-p+1}\)
\(\Delta y_{t}=\pi+\Pi_1\Delta y_{t-1}...+\Pi_{p-1}\Delta y_{t-p+1}+u_{t}\)
1.2 Оценки параметров множественной регрессионной модели связи
\(y_{t}\) с \(\Delta y_{t-1},\Delta y_{t-2},...\Delta y_{t-p+1}\)
\(y_{t}=\theta+\Lambda_1\Delta y_{t-1}...+\Lambda_{p-1}\Delta y_{t-p+1}+v_{t}\)
2.1 Здесь вычисляется ковариационные матрицы остатков
\(\Sigma_{vv}={cov(v_{i},v_{j});i,j=1,...,n}\)
\(\Sigma_{u u }={cov(u_{i},u_{j});i,j=1,...,n}\)
\(\Sigma_{u v}={cov(u_{i},v_{j});i,j=1,...,n}\)
\(\Sigma_{vu}=Σ_{u v}′\)
И затем находят собственные значения \(\lambda_1₁,...,\lambda_{n}\) матрицы
\(\Sigma = \Sigma_{vv}^{-1}\Sigma_{u v}\Sigma_{u u}^{-1}\Sigma_{u v}\)
которые упорядочивают по убыванию \(\lambda_1>...>\lambda_{n}\). Полученные собственные значения впоследствии будут использоваться для проверки гипотез о порядке коинтеграции.
3.Пусть \(a_1,...,a_{h}\) первые \(h\) собственных векторов, отвечающие соответсвующим собственным значениям\(\lambda_1>...>\lambda_{n}\),нормализованные так, чтобы
\(a_{i}′\Sigma_{vv}a_{j}=1\)
Составим из них матрицу \(A=[a_1₁,...,a_{h}]\)
Тогда оценкой максимального правдоподобия для \(\zeta_0\) будет
\(\zeta_0=\Sigma_{uv}AA′\)
оценками максимального правдоподобия для \(\zeta_{i} i=1,...,p-1\) будут
\(\zeta_{i}=\Pi_{i}-\zeta_0\Lambda_{i}\)
а оценкой максимального правдоподобия для \(\alpha\) будет
\(\alpha=\pi-\zeta_0\theta\)
Итак мы нашли значения оценок модели коинтеграции
В качестве основной рассмотрим гипотезу о том, что существует в точности \(h\) коинтеграционных соотношений. Это эквивалентно тому, что \(\zeta_0\) может быть записана в форме
\(\zeta_0=-BA′\)
где матрица \(B\)- размера \((n×h)\), a \(A′(n×h)\) . При этом предположении максимальная величина, которую может достичь логарифм функции правдоподобия задается выражением
\[L^{∗}=-((Tn)/2)log2π-((Tn)/2)-(T/2)log|\Sigma_{uu}|-(T/2)\Sigma_{i=1}^{h}log(1-λ_{i})\]
Теперь рассмотрим альтернативную гипотезу, что существует \(n\) коинтеграционных соотношений, где \(n\)- размерность вектора \(y_{t}\). Это означает, что любая линейная комбинация \(y_{t}\) является стационарной. Значения логарифма функции правдоподобия в данном предположении будет \[L_{А}^{∗}=-((Tn)/2)log2π-((Tn)/2)-(T/2)log|Σ_{uu}|-(T/2)∑_{i=1}ⁿlog(1-λ_{i})\] Тест отношения правдоподобия для проверки основной гипотезы, против данной альтернативы \[L_{А}^{∗}-L₀^{∗}=(T/2)∑_{i=h+1}ⁿlog(1-λ_{i}) \]
Распределение \(λ_{i}\) , а следовательно и \(L^{∗}\) имеет сложный вид, поэтому значения статистик для проверки гитотез о порядке коинтеграции затабулированы в таблицах. Таблицы довольно обширные зависят от уровня значимости, порядка коинтеграции, длины выборки. Таблицы получены С.Йехансоном методом статистического моделирования. с именем Йехансона и связано соответствующего названия метода ca.jo в R из библиотеки urca.
Проведем оценку параметров и проверку статистических гипотез в R для смоделированных ранее 4 рядов.
vecm <- ca.jo(data, ecdet = "none",type="eigen",K=3,spec="longrun")
summary(vecm)
##
## ######################
## # Johansen-Procedure #
## ######################
##
## Test type: maximal eigenvalue statistic (lambda max) , with linear trend
##
## Eigenvalues (lambda):
## [1] 0.193840427 0.132591282 0.027067285 0.009821668
##
## Values of teststatistic and critical values of test:
##
## test 10pct 5pct 1pct
## r <= 3 | 2.93 6.50 8.18 11.65
## r <= 2 | 8.15 12.91 14.90 19.19
## r <= 1 | 42.25 18.90 21.07 25.75
## r = 0 | 64.00 24.78 27.14 32.14
##
## Eigenvectors, normalised to first column:
## (These are the cointegration relations)
##
## X1.l3 X2.l3 X3.l3 X4.l3
## X1.l3 1.000000 1.00000000 1.000000 1.0000000
## X2.l3 3.069131 -1.52170051 0.868366 0.5823304
## X3.l3 -4.118293 0.54273290 -1.815991 2.9463012
## X4.l3 -0.144223 -0.08097939 1.149661 0.4673575
##
## Weights W:
## (This is the loading matrix)
##
## X1.l3 X2.l3 X3.l3 X4.l3
## X1.d -0.08587950 -0.29754140 -0.011434289 0.0012321600
## X2.d -0.08282705 0.11410801 -0.003695802 0.0002683833
## X3.d -0.03017377 -0.03093582 0.016266577 -0.0024929832
## X4.d 0.01205376 -0.01510447 -0.026764753 -0.0063260519
vecm@cval
## 10pct 5pct 1pct
## r <= 3 | 6.50 8.18 11.65
## r <= 2 | 12.91 14.90 19.19
## r <= 1 | 18.90 21.07 25.75
## r = 0 | 24.78 27.14 32.14
vecm@teststat
## [1] 2.931455 8.149784 42.246764 63.995652
outmat <-rbind(vecm@cval[,2],vecm@teststat)
legends <- c("critical values","statistics")
barplot(outmat, main="Statistics vs Critical Value for 5% test ",legend.text = legends,beside = TRUE, col=c("red","blue"), las=2)
Проверка гипотезы о порядке коинтеграции показывает, что порядок коинтеграции в нашей смоделированной 4-мерной системе векторов \(y_t, h\le2\).
Очень полезен и визуальный спобоб проверки гипотезы о порядке \(h\) коинтеграции, основанный на определении. \(a\)- коинтегрирующий вектор, если линейная комбинация \(a′y_{t}\),должна быть стационарной (принадлежать классу \(I(0)\)). Вот и посмотрим
Линейная кобинация с первым вектором
z1 <- data%*%vecm@V[,1]
matplot(z1,type ="l",col = "blue",lwd = 2,main ='z1= y*a1')
на вид стационарна.Линейная кобинация со вторым вектором
z2 <- data%*%vecm@V[,2]
matplot(z2,type ="l",col = "blue",lwd = 2,main ='z2= y*a2')
также стационарна на вид.Линейная кобинация с третьим вектором
z3 <- data%*%vecm@V[,3]
matplot(z3,type ="l",col = "blue",lwd = 2,main ='z3= y*a3')
Уже содержит явный тренд и не следовательно является стационарной. Таким образом наша гипотеза о порядке коинтеграции \(h=2\) не отвергается и в результате визуального теста.
Посмотрим на результатах оценки модели к реальным данным- фьючерсам на индексы РТС и Ruble/USD,Brent.
library(urca)
rtsData <- read.csv("c:/Shurd/ALection/RublerRTSBrent.csv")
rts <- rtsData[,2:4]
dim(rts)
## [1] 382 3
matplot(rts[,1],lwd=2,main="RTS",type="l",col="blue")
matplot(rts[,2],lwd=2,main="Ruible/USD",type="l",col="blue")
matplot(rts[,3],lwd=2,main="BRENT",type="l",col="blue")
vecm <- ca.jo(rts, ecdet = "none",type="eigen",K=3,spec="longrun")
summary(vecm)
##
## ######################
## # Johansen-Procedure #
## ######################
##
## Test type: maximal eigenvalue statistic (lambda max) , with linear trend
##
## Eigenvalues (lambda):
## [1] 0.068547244 0.012498484 0.003111798
##
## Values of teststatistic and critical values of test:
##
## test 10pct 5pct 1pct
## r <= 2 | 1.18 6.50 8.18 11.65
## r <= 1 | 4.77 12.91 14.90 19.19
## r = 0 | 26.91 18.90 21.07 25.75
##
## Eigenvectors, normalised to first column:
## (These are the cointegration relations)
##
## RTS.l3 Si.l3 Brent.l3
## RTS.l3 1.000 1.000000 1.00000
## Si.l3 1184.003 1.265989 1.79123
## Brent.l3 567023.688 -23.448800 -627.22827
##
## Weights W:
## (This is the loading matrix)
##
## RTS.l3 Si.l3 Brent.l3
## RTS.d 3.244002e-05 -3.136059e-02 7.518170e-03
## Si.d -8.377620e-05 1.027574e-02 -5.194228e-03
## Brent.d -2.410370e-08 -8.347087e-06 1.026592e-05
vecm@cval
## 10pct 5pct 1pct
## r <= 2 | 6.50 8.18 11.65
## r <= 1 | 12.91 14.90 19.19
## r = 0 | 18.90 21.07 25.75
vecm@teststat
## [1] 1.181210 4.766777 26.912717
outmat <-rbind(vecm@cval[,3],vecm@teststat)
legends <- c("critical values","statistics")
barplot(outmat, main="Statistics vs Critical Value for 5% test ",legend.text = legends,beside = TRUE, col=c("red","blue"), las=2)
Из последней картинки следует, что порядок коинтеграции равен 1.
Собственные значения
\(\lambda_1,\lambda_2,\lambda_3\)
vecm@lambda
## [1] 0.068547244 0.012498484 0.003111798
Коинтегрирующие вектора \(a =(a_1,... ,a_3)\) .
a<- vecm@V[,1:3]
a
## RTS.l3 Si.l3 Brent.l3
## RTS.l3 1.000 1.000000 1.00000
## Si.l3 1184.003 1.265989 1.79123
## Brent.l3 567023.688 -23.448800 -627.22827
Оценки константы
vecm@GAMMA[,1]
## RTS.d Si.d Brent.d
## 710.148369 7916.698886 2.114813
Оценки матрицы \(\zeta_1\)
vecm@GAMMA[,2:4]
## RTS.dl1 Si.dl1 Brent.dl1
## RTS.d -1.570941e-01 -0.2794702809 -15.64334974
## Si.d 2.942576e-03 -0.0855494017 -15.75743173
## Brent.d -5.551113e-05 -0.0001457525 -0.06175868
Оценки матрицы \(\zeta_0\)
vecm@GAMMA[,5:7]
## RTS.dl2 Si.dl2 Brent.dl2
## RTS.d -0.0918991177 -0.2488321328 -16.10989723
## Si.d 0.0740497855 0.0944815226 8.56665672
## Brent.d -0.0001315527 -0.0003132918 -0.03885834
Напоследок приведу пример, где показывается, что, несмотря на внешнее сходство, регрессия и коинтеграция это разные вещи.
Известен следующий факт: Пусть имеется двухмерный процесс \(X_t=(X_{t,1},X_{t,2}),t = 1,...,N\) Оценка регрессии вида \[X_{t,1}= aX_{t,2}+\epsilon_t\] одного вектора относительного другого дает нам вектор \((1,-\tilde a)\), который является состоятельной оценкой вектора коинтеграции
Пусть процесс \(X_t=(X_{t,1},X_{t,2}),t = 1,...,N\) есть процесс векторной авторегрессии второго порядка \[X_t=\Pi_1X_{t-1}+\Pi_2X_{t-2}+\mu+\epsilon_t\] где матрица \(\Pi_1\) \[\Pi_{1,1}^{(1)} = 0.924,\Pi_{2,1}^{(1)} = -0.134\] \[\Pi_{2,1}^{(1)} = 0.001,\Pi_{2,2}^{(1)} = 0.986\], матрица \(\Pi_2\) \[\Pi_{1,1}^{(2)}= 0.047,\Pi_{2,1}^{(2)}= 0.403\] \[\Pi_{2,1}^{(2)}= 0.002,\Pi_{2,2}^{(2)}= -0.044\]
вектор \(\mu\) \[\mu=(0.073,-0.004)\], \[\epsilon_t=(\epsilon_{t,1},\epsilon_{t,2})\] \[E[\epsilon_{t,i}]= 0,D[\epsilon_{t,i}] = 20\], \[cov(\epsilon_{t,1},\epsilon_{t,2}= 0)\]
В следующем shiny application попробуем определить оценку \(\tilde a\) компоненту вектора \(a=(1,-\tilde a)\) вручную и сравнить с оценкой через регрессиию и через коинтеграцию.